Improved Logistical Management System

ABSTRACT

Disclosed herein are system, method, and computer program product for a transporting of a good. An embodiment operates by receiving a user request for the transporting of the good from a pickup location to a destination location. Thereafter, a corresponding pickup, first intermediate, a second intermediate, and destination node are identified on a pre-generated graph, and transportation edges each relating to a transit cost associated with one of the pickup, first intermediate, second intermediate, and destination locations. Subsequently, a subgraph of of the pre-generated graph comprising the pickup, first intermediate, second intermediate, and destination node, as well as the transportation edges, are generated. Based on the subgraph, Based on subgraph, a preferred route from the pickup location to the destination location having a lowest transit cost for transporting the good is generated.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional PatentApplication No. 62/934,336, filed on Nov. 12, 2019, which isincorporated herein by reference in its entirety.

BACKGROUND

Current logistical companies manually insert orders for transportationsof goods into their system. In doing so, current logistic companies haveto manually determine an appropriate route for the goods to get from itscurrent location to a destination location, which sometimes includesstops until arriving at the destination location. As such, currentlogistical companies must manually determine an appropriate transporter(e.g., a driver, a train, and a flight) for each leg of the transport.Accordingly, current logistic companies are unable to automaticallydetermine an appropriate route and transporters for goods upon receiptof the order. Along these lines, current logistical companies are unableto systematically take into account the user's preferences. As such,current logistical companies are unable to automatically determine thata preferred route for one user may not be a preferred route for anotheruser.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are incorporated herein and form a part of thespecification.

FIG. 1 is a block diagram of an example logistical management system,according to some embodiments.

FIGS. 2-4 are example user interfaces of a user request application,according to some embodiments.

FIG. 5 is an example transportation graph generated by a route generatormodule, according to some embodiments.

FIG. 6 is a block diagram of an example transport module, according tosome embodiments.

FIG. 7 is an example drive-only route constructed by a route generatormodule in communication with a transport module, according to someembodiments.

FIG. 8 is an example route having a connection as constructed by a routegenerator module in communication with a transport module, according tosome embodiments.

FIG. 9 is example transporters identified by a transporter application,according to some embodiments.

FIG. 10 is an example user interface of a transporter application whenwaiting for an assignment of an order, according to some embodiments.

FIGS. 11 and 12 are example user interfaces of a transporter applicationupon receipt of an assignment of an order, according to someembodiments.

FIG. 13 is an example user interface of a transporter application for atransporter traveling to a pickup or intermediate location, according tosome embodiments.

FIGS. 14-17 are example user interfaces of a transporter application fora transporter at a pickup or intermediate location, according to someembodiments.

FIG. 18 is an example user interface of a transporter application for atransporter traveling to a destination location, according to someembodiments.

FIGS. 19 and 20 are example user interfaces of a transporter applicationfor a transporter at a destination location, according to someembodiments.

FIG. 21 is an example user interface of a transporter application for atransporter upon completion of transportation of goods of an order,according to some embodiments.

FIG. 22 is an example user interface of a transport manager application,illustrating a plurality of orders from different users, according tosome embodiments.

FIG. 23 is an example user interface of a transport manager application,illustrating a particular order, according to some embodiments.

FIG. 24 is an example user interface of a transport manager application,illustrating dispatching a transporter for the transport of a particularorder, according to some embodiments.

FIG. 25 is an example user interface of a transport manager application,illustrating a digest of a particular order, according to someembodiments.

FIG. 26 is a flowchart illustrating an example process for managing thetransport of goods, according to some embodiments.

FIG. 27 is a flowchart illustrating an example process for transportinga good from one location to another location, according to someembodiments.

FIG. 28 is a flowchart illustrating an example process for identifyingan appropriate transporter of a good, according to some embodiments.

FIG. 29 is a flowchart illustrating an example process for minimizingthe risk of a good delivered past a requested time, according to someembodiments.

FIG. 30 is an example computer system useful for implementing variousembodiments.

In the drawings, like reference numbers generally indicate identical orsimilar elements. Additionally, generally, the left-most digit(s) of areference number identifies the drawing in which the reference numberfirst appears.

DETAILED DESCRIPTION

Provided herein are system, apparatus, device, method and/or computerprogram product embodiments, and/or combinations and sub-combinationsthereof, for providing an end-to-end suite for managing the transport ofgoods from receipt of an order to transport of the good to a destinationlocation.

Current logistical systems have many shortcomings in automaticallydetermining an appropriate route from a pickup location to a destinationlocation, upon receipt of a request for transport of goods, and withoutassistance from a user. First, current logistical systems typicallyrequire user intervention for determining the appropriate route andcoordinating the transportation of the goods among stops (e.g., pickuplocation, intermediate locations, and destination location) of theappropriate route. Specifically, upon receipt of the request, authorizedusers typically manually determine the appropriate route from the pickuplocation to the destination location. In doing so, authorized users willcommunicate with transporters and/or methods of transportation toarrange for transport of the goods. As such, for example, authorizedusers will communicate with a transporter (e.g., a driver) to pick upgoods from a pickup location and deliver the goods to a firstintermediate location (e.g., an airport). Authorized users will thencommunicate with a transportation company for transportation of thegoods from the first intermediate location to a second intermediatelocation (e.g., an airport). Authorized users will then communicate witha transporter (e.g., a driver) to pick up the goods from the secondintermediate location and deliver the goods to a destination location.

Second, current logistical systems do not consider the preferences ofusers requesting the transport of goods. For example, current logisticalsystems do not consider that some users do not like particular methodsof transportation (e.g., airplane or train) or particular carriers(e.g., United Airlines or BNSF Railway), to provide a few examples.Accordingly, when determining the appropriate route, current logisticalsystems do not accurately determine modified costs for differentpossible routes (and segments) based on user preferences.

Third, current logistical systems do not consider many variablesinherent to various possible routes from the pickup location to thedestination location. For example, current logistical systems do notconsider a transport time for particular transporters (e.g., drivers) toarrive at pickup locations and deliver goods to intermediate anddestination locations. Further, current logistical systems do notconsider a tender time for particular transporters to receive goods at apickup location and deliver goods to intermediate and destinationlocations. Accordingly, when determining the appropriate route, currentlogistical systems do not consider that different pickup, intermediate,and destination locations have different transport and tender times. Inaddition, current logistical systems do not consider that transport andtender times may depend on the transporter. For example, sometransporters are slower or faster than other transporters.

Fourth, when determining transporters to pick up goods from the pickupor intermediate locations and deliver the goods to the intermediate ordestination locations, current logistical systems do not consider allpossible transporters capable of transporting the goods. For example,some logistical systems solely determine transporters based on an actualcost. Other logistical systems do not properly compare transporters—suchas a transporter previously assigned to transport goods and anunassigned transporter—as possible transporters for transporting goods.

In overcoming the aforementioned shortcomings, the present disclosureprovides a central server including a user request application, a routegenerator module, a transporter application, and/or a transport managerapplication. The user request application receives a request fortransport of a good from a recipient of the good (e.g., a consumer or ahospital) or a transportation company (e.g., United Parcel Service orFedEx Corporation). The request includes a pickup location, adestination location, a service type (e.g., recommended, fastestrouting, economy routing, and drive only) and a commodity type (e.g.,aircraft parts, computer equipment, documents, electronic equipment,medical device/part, other, etc.).

In some embodiments, upon submission of the order, for determining apreferred route from the pickup location to the destination location,the route generator module receives a pre-generated graph fromgeographical data module. The pre-generated graph has geographical data,including all possible pickup locations, possible intermediatelocations, and/or possible delivery locations. Route generator modulemay then translate the graph and identify the pickup and deliverylocations specified in the request and all possible intermediatelocations. Route generator module may then identify all possible routesfrom the pickup location to the delivery location, which may include oneor more intermediate routes.

As such, the transportation graph may include many possibletransportation segments making up the possible routes from the pickuplocation to the destination location and possibly including possibleintermediate locations. For example, the possible transportationsegments may be from the pickup location, various possible intermediatelocations, from the numerous possible intermediate locations to otherpossible intermediate locations, and from these possible intermediatelocations to the destination location. The possible transportationsegments may relate to the same or different transportation types (e.g.,cars, trains, flight). For example, one possible route may be a drivefrom a pickup location (e.g., a manufacturing center) to an intermediatelocation (e.g., a trucking stop) and then from the intermediate locationto a destination location (e.g., a store). Another possible route mayinclude a drive from a pickup location (e.g., a hospital) to a firstintermediate location (e.g., airport), a flight front the firstintermediate location to a second intermediate location (e.g., airport),and a drive from the second intermediate location to a destinationlocation (e.g., hospital).

Route generator module may then identify one more transportation edgesfor each of the pickup location, the intermediate transportationlocation, and the delivery location. The transportation edges may relateto a time or a cost relating to the pick up location, the intermediatetransportation location, the delivery location, and/or the segmentsbetween the locations. The transportation edges may relate to a traveltime between locations, a cargo time at specific locations, and a tendertime at specific locations, as will be described in more detail below.

Subsequently, the route generator module determines a preferred routebased on the possible transportation segments having the lowest actualcost (provided by transporters), for example, using a search algorithmsuch as A-star (A*). As such, the preferred route may be determinedirrespective of an actual cost or a modified cost, as discussed below(e.g., fastest route possible). Conversely, the preferred route maydepend on the transportation cost, a user preference, and a likelihoodof route approval. In some embodiments, the user preference may be anairline, a flight, and a time of day. In some embodiments, the userpreferences include a user's value of time, which may be based on alikelihood of route approval. As such, the preferred route may depend onthe likelihood of route approval independent of the user preference.

Further, in some embodiments, upon submission of the order, atransporter application then determines a preferred transporter totransport a good from a pickup location to an intermediate location,from the intermediate location to another intermediate location, and/orfrom the intermediate location to the destination location. Indetermining the preferred transporter, the transporter applicationidentifies transporters within a predetermined distance from the pickuplocation. In some embodiments, the transporters may be scheduled totransport goods for another embodiment. The transporter application thendetermines if the identified transporters are eligible based on thegoods commodity type. For example, some goods may require transportersto have certified licenses or appropriate transportation carriers (e.g.,refrigeration, weight). The transporter application also determines ifthe identified transporters are solicitable. For example, thetransporter application confirms that the transporter is able totransport goods to an intermediate or delivery destination prior to thespecified times of the route generator module or user.

The transporter application thereafter determines an estimatedcompletion time for transporters to transport the goods to thedestination location. In doing so, the transporter application mayutilize a transporter model for determining an estimated completion time(ECT) for completing all jobs for each eligible transporter. Based onthe estimated completion time, the transporter application selects apreferred transporter. In some embodiments, the preferred transporter isscheduled to pick up and deliver goods for another order beforedelivering the solicited order.

The transporter application then sends a request to transport the goodto the preferred transporter and waits an allotted time for acceptance.If the transporter application does not receive an acceptance within theallotted time, the transporter application restarts the process ofidentifying a preferred transporter. In some embodiments, thetransporter application may consider transporters that did not acceptthe same job within the allotted time, for example, by denying or notresponding to the request.

In addition, in some embodiments, upon the submission of the request,the transport manager application may create a record of the order andplace the order in a queue of orders. In doing so, the transport managerapplication may identify the type of goods and designate them to aspecial operations team trained to handle their transport. The transportmanager application may permit members of the special operations teamsto designate scheduled actions, create or edit preferred routes(discussed below), select transporters for different segments, designatetasks to transporters, and specify rewards for completing tasks.

The transport manager application may also be in communication with theroute generator module to receive the preferred route and the requiredpickup times associated with the pickup location, intermediate locations(if applicable), and destination location. Accordingly, the transportmanager application may sort the orders based on the scheduled times forvarious actions and/or preferred departure times for routes. As such,the orders having upcoming scheduled action times or upcoming preferredroute times may be provided first, whereas orders having later scheduledaction times or later scheduled preferred route times may be providedlast. In doing so, the transport manager application may present theorder a specified color (e.g., red, yellow, and green) based on theschedule action and/or preferred route time.

Accordingly, to overcome the shortcoming of current logistical systems,the present disclosure's logistical system improves the processing ofcomputing devices for at least the following reasons. First, afterreceiving an order, computing devices store a location of a pickup anddestination node (e.g., a pickup and destination location) in memory.Computing devices then attempt to identify additional routes for thegoods. To do so, computing devices may be in communication with externalproviders (e.g., transportation providers) to identify intermediatenodes (e.g., intermediate locations) for changing transportation carriesduring the transport to the destination location, and, then, to storethese intermediate nodes in memory. Computing devices are further ableto identify the different transportation methods between the same nodes(e.g., pickup to intermediate, intermediate to intermediate, andintermediate to destination). As such, computing devices are able tostore each possible manner to travel from one particular node to anotherparticular node is stored. These may be considered segments and arestored in memory.

After storing the different segments in memory, computing devicesdetermine an actual cost for each segment, transit time for eachsegment, and/or a likelihood of route approval for each possiblecombination of segments. To do so, computing devices may pull data(e.g., travel time, travel cost) from external transportation sources.Computing devices may then determine a user value for each segment basedon the transit time and actual cost for the associated segment, as wellas the user's value of cost or time. For example, the user may value 1minute as $3. Alternatively, the user may value 10 minutes as $1.Computing devices may then store the user value associated with thatsegment in memory.

Thereafter, computing devices utilize a pathfinding algorithm (e.g., A*)to traverse through each possible combination of segments stored inmemory. In doing so, computing devices are able to identify the bestpath for a user based on the segments associated costs. This can beperformed automatically without user input and be based on the user'spast orders.

FIG. 1 is a block diagram of an example logistical management system(LMS) 100, according to some embodiments. LMS 100 may include centralserver 102, transporter provider 104, geographical provider 106, and/oruser devices 108A-C. As will be discussed in more detail below, centralserver 102 may receive and process requests for transporting goods fromusers of user devices 108A-C. As such, in some embodiments, userssending the requests may be from those in possession of the goods (e.g.,owners of the goods). In some embodiments, users may be a carrierdelivery service company (e.g., United Parcel Service or FedExCorporation). User devices 108A-C may be a personal digital assistant(PDA), a desktop workstation, a laptop or notebook computer, a netbook,tablet, a smartphone, or any other type of electronic device, to name afew non-limiting examples.

Central server 102 may be in communication transport provider 104 and/orgeographical provider 106. Transport provider 104 may provide transportdata of various transportation modes (e.g., airlines, trains, freighttrucks). In some embodiments, central server 102 is in communicationwith multiple transportation providers 104 providing transportationinformation for specific types of transportation and/or companies. Forexample, transportation providers may be American Airlines, Amtrak, andJ. B. Hunt Transport Services. As such, central server 102 may be incommunication with multiple different transportation providers 104 ofthe same or different types (e.g., train carriers, airline carriers, andvehicle carriers).

Further, geographical provider 106 may provide geographical datarequired to process the request. As will be discussed in more detailbelow, the request includes a pickup and destination location, and, inprocessing the request, central server 102 may identify intermediatelocations, which relate to stops between the pickup location and thedestination location. Accordingly, geographical provider 106 may providegeographical data relating to the pickup, intermediate, and destinationlocations. As such, where the transporter is a vehicle, geographicaldata may include traffic and navigational data to pick up, intermediate,and destination locations at different times and days. Along theselines, geographical data may also be information on the pickup,intermediate, and destination location (e.g., parking, precise pickuplocations (e.g., department), walking directions, and a map).Geographical provider 106 may continually provide geographical data inreal-time.

In receiving and processing requests, central server 102 includes userprofile module 110, geographical data module 112, user requestapplication 114, route generator module 116, transporter module 118,transporter application 120, and/or transport manager application 122.

User profile module 110 stores user profiles. As discussed above, usersmay be a transportation company requesting transport of goods for theirusers (e.g., clients) or those requesting transport of their goods. Assuch, user profiles may be for the transportation companies requestingtransport for their users or those wishing to transport their own goods.User profiles may include personal information (e.g., a name, a homeaddress, a phone number, and email address), previous shippinginformation (e.g., types of previously transported goods, sizes ofpreviously transported goods, previous departing locations, and previousdestination locations), user preferences (e.g., a particulartransportation type or carrier). Further, in some embodiments, as willbe discussed in more detail below, user profiles may include a uservalue of time (which is used to derive a recommended route for theuser).

Geographical data module 112 may store geographical data received fromgeographical provider 106 and/or from an authorized user. Thegeographical data may relate to the transport of goods. As discussedabove, transporters may pick up goods from a pickup location or anintermediate location, and drop off the goods at the intermediatelocation, another intermediate location, or the destination location. Insome embodiments, the geographical data may relate to possible pickuplocations, possible intermediate locations, and possible destinationlocations. The possible pickup and destination locations may be anyphysical location relating to the user seeking transport of the good,such as a personal residence (e.g., a house) or a place of business(e.g., a package delivery company, a hospital, a car manufacturer). Thepossible intermediate locations may be related to one or more modes oftransportation. In some embodiments, the modes of transportation may berail (e.g., trains), air (e.g., airlines), road (e.g., cars, trucks). Insome embodiments, the possible intermediate locations may be physicallocations related to the modes of transportation. For example, where themode of transportation is air, the possible intermediate locations mayprivate or public airports. Likewise, where the mode of transportationis road, the possible intermediate locations are truck stops.

Further, in some embodiments, geographical data module may also includetransit information relating to the possible pickup locations, thepossible intermediate locations, and the possible destination locations.In some embodiments, the transit information may also includeprescheduled departure dates and times, prescheduled arrival dates andtimes, and/or prescheduled transport time, for example, for an airlineand/or a freight. In some embodiments, geographical data may alsoinclude cutoff times before departure for receipt of goods, for example,for an airport or a train station.

Along these lines, the transport data may also relate to each possibleroute from the possible pickup locations to the possible intermediatelocations or the possible destination locations and from the possibleintermediate locations to other possible intermediate locations and thepossible destination locations. In some embodiments, the transitinformation may include driving data (e.g., navigational data, trafficdata, road closure data, etc.) from. Along these lines, geographicaldata module 112 may receive updates form geographical provider 106relating to the transit information (e.g., new departure dates andupdates, new arrival dates and times, new transport times, new routes,etc.).

Geographical data module 112 may also generate a graph for routegenerating module 116 to utilize for generating a preferred route from apickup location to a destination location. Geographical data module 112may generate a graph (pre-generated graph) based on geographical datareceived from geographical provider 106 and/or provided by an authorizeduser. In some embodiments, the pre-generated graph includes nodes allpossible pickup locations, possible intermediate locations, and/orpossible destination locations. In some embodiments, the graph furtherincludes all possible routes for traveling from the possible pickuplocations to the possible intermediate locations, from the possiblepickup locations to the possible destination locations, from thepossible intermediate locations to other possible intermediatelocations, and/or from the possible intermediate locations or topossible destination locations.

User request application 114 receives requests for transporting goodsfrom user devices 108A-C. User request application 114 may then processa request for transporting goods from starting a pickup location to adestination location. As discussed above, intermediate companies mayutilize user request application 114 on behalf of their consumers.Additionally, consumers may directly utilize user request application114 to transport goods.

FIGS. 2-4 illustrate example interfaces 200, 300, and 400 of userrequest application 114 (of FIG. 1). Referring now to FIG. 2, userinterface 200 includes pick up time 202, pick up address 204, pick-uppoint of contact (POC) 206, pick-up special instructions 208,destination address 210, destination POC 212, destination specialinstructions 214, good information 216, service type 218, commodity type220, and/or submit order button 222.

In some embodiments, as illustrated, pick up time 202 may include aplurality of options, such as “Send a driver immediately,” “FuturePickup,” and “Will Call.” The “Send a driver immediately” option maysend a transporter (e.g., driver) immediately upon submission of arequest. The “Future Pickup” option may allow a user to provide adesignated time and/or date. The “Will Call” option may allow a user toprovide a request that the goods be picked up by the user at thedestination location.

Pick-up and destination addresses 204 and 210 provide a location forpicking up and delivering the goods, respectively. Pick-up anddestination POCs 206 and 212 provide an individual for contact before,during, or after transit to and/or from the pickup location anddestination location, respectively. Pick-up and destination specialinstructions 208 and 214 provide instructions for transportingparticular goods with respect to their state (e.g., fragile orperishable), unique circumstances (e.g., deadline, importance), or aspecial case (e.g., handing of the good (e.g., upright)). Goodinformation 216 relates to any information required for the transport ofthe goods. For example, as illustrated, good information 216 may relateto a number of pieces of a particular good having certain dimensions,weight, and/or user reference numbers. Service type 218 providespredetermined options for the transporting of the goods. For example, asshown, the options may be a fastest route, a drive-only route, aneconomy route, and a recommended route, as will be described in moredetail below.

Referring now to FIG. 3, upon submission of a request for transport ofgoods via user interface 200's submit button 222 (of FIG. 2), userinterface 300 may be presented. User interface 300 includes map 302,user request summary 304, change service type 306, route summary 308,and/or confirmation button 310. Map 302 presents the route. User requestsummary 304 includes some or all of the user information provided onuser interface 200. Change service type 306 permits changes to servicetype 218 (of FIG. 2). Route summary 308 includes a pickup date/timeand/or a delivery date/time. The pickup and/or delivery dates and/ortimes may be a range of dates and/or times. Route summary 308 alsoincludes a change delivery date or time option 312.

Referring now to FIG. 4, after confirmation of user request via userinterface 300's confirmation button 310 (of FIG. 3), user interface 400may be presented. User interface 400 includes live map 402, pickup anddestination window 404, status updater 406, tracking identificationnumber 408, sharable link 410, and/or detail summary 412. Live map 402provides a current (live) transport location of goods with respect to ageographical map. Pickup and destination window 404 provides a pertinentdate, time, and address for pickup and delivery of goods. Status updater406 provides an update on a status of the transport of goods. As such,status updater 406 may provide a list of current and/or past events,which may be a result of reaching a designated geographical location, aspecified time, a predefined event (e.g., scanning a package atintermediate location). Tracking identification number 408 is a randomcombination of numbers and letters automatically generated uponsubmission of an order. Tracking identification number 408 may be uniqueto a user request. Sharable link 410 allows users to copy or shareaccess to user interface 400. For example, where users aretransportation companies, sharable link 410 may be provided to theirusers whose goods are transported. Detail summary 412 includes some orall of the information provided via user interface 300 (of FIG. 3).

Referring to FIG. 1, central server 102 further includes route generatormodule 116 to generate a preferred route from a pickup location to adestination location. In some embodiments, upon user request application114 receiving a user request, user request application 114 sends therequest to the route generator module 116, which requests thepre-generated graph, as discussed above, from geographical data module112. Route generator module 116 then translates the pre-generated graphto identify the user request's pickup and destination locations. In someembodiments, route generator module 116 also identifies possibleintermediate locations corresponding to the pickup and destinationlocations based on the geographical data.

As discussed above, the possible intermediate relate to locations forproducts to change carriers and/or modes of transportation to arrive atthe destination location. In some embodiments, the possible intermediatelocations corresponding to the pickup and destination locations providedin the request are less than all possible intermediate locationsprovided in the pre-generated graph. In some embodiments, routegenerator module 116 can also identify transit information for thepickup location, each possible intermediate location, and thedestination location, as described above.

Further, route generator module 116 also identify possible routes fromthe pickup location to each possible intermediate location, from thepickup location to the destination location, from each possibleintermediate location to another possible intermediate location, and/orfrom each possible intermediate location to the destination location. Insome embodiments, route generator module 116 may identify multiplepossible routes from one location to another location. For example,route generator module 116 may identify multiple routes from the pickuplocation to a possible intermediate location.

Route generator module 116 may generate a subgraph from thepre-generated graph based on the pickup location, the destinationlocation, the possible intermediate locations, and/or the possibleroutes. In some embodiments, route generator module 116 may generate thepossible routes after generating the subgraph. In some embodiments,route generator module 116 may generate the subgraph with the possibleroutes.

FIG. 5 is an example transportation graph 500 for the transport of goodsfrom pickup location 502 to destination location 504. In someembodiments, transportation graph 500 is the pre-generated graphreceived from geographical data module 112 (of FIG. 1). In someembodiments, transportation graph 500 is a subgraph of the pre-generatedgraph

Further, as discussed above, in some embodiments, transportation graph500 may include any combination of possible intermediate locations506A-C. For example, in some embodiments, transportation graph 500 mayinclude a single possible intermediate location 506A. Further, in someembodiments, transportation graph 500 may include multiple possibleintermediate locations 506B and 506C.

Accordingly, in some embodiments, transportation graph 500 may includepossible transportation segments 508A-G relating to the possible routesfrom starting location 502 to destination location 504, from startinglocation to each possible intermediate location 506A-C, from eachintermediate location 506A-C to another possible intermediate location506A-C, and from each intermediate location 506A-C to destinationlocation 504. In some embodiments, transportation graph 500 may includea single possible transportation segment 508A and 508B from pickuplocation 502 to possible intermediate location 506B or destinationlocation 504. Further, in some embodiments, transportation graph 500 mayalso include a single possible transportation segment 508C from onepossible intermediate location 506B to another possible intermediatelocation 506D. Along these lines, in some embodiments, transportationgraph 500 may also include multiple possible transportation segments508D and 508E from pickup location 502 to possible intermediate location506A. Further, although not illustrated, in some embodiments,transportation graph 500 may also include multiple possibletransportation segments from pickup location 502 to destination location504, from one possible intermediate location 506B to another possibleintermediate location 506C, and from possible intermediate location 506Cto destination location 504.

As described above, pickup location 502, possible intermediate locations506A-C, and destination location 504 may relate to the same or differentmodes of transportation locations (e.g., airports, train stations,trucking stations, etc.). Accordingly, possible transportation segments508A-G may relate to the same or different modes of transportation(e.g., vehicle, airplane, train, waterway, etc.). For example, possibletransportation segments 508D and 508E—from pickup location 502 topossible intermediate location 506A—may relate to the same mode oftransportation (e.g., airplane). Alternatively, a particular possibletransportation segment 508D—from pickup location 502 to possibleintermediate location 506A—may relate to one mode of transportation(e.g., vehicle), and another possible transportation segment 508E frompickup location 502 to possible intermediate location 506B may relate toanother mode of transportation (e.g., airplane). The same may apply frompickup location 502 to destination location 504 and from one possibleintermediate location 506B to another possible intermediate location506C. As such, a complete route from pickup location 502 to destinationlocation 504, with or without intermediate locations 506A-C, may utilizethe same or different modes of transportation.

As described above, after generating the subgraph from the pre-generatedgraph, route generator module 116 (of FIG. 1) also receives transportdata relating to the pickup location 502, destination location 504, eachpossible intermediate locations 506A-C, and possible transportationsegments 508A-G from transporter module 118 (of FIG. 1). In someembodiments, route generator module 116 may be in communication withtransporter module 118 to determine one or more transformation edges foreach of pickup location 502, destination location 504, and each possibleintermediate location 506A-C. Route generate module 116 may associatethe transformation edges to the pickup location 502, destinationlocation 504, and/or each possible intermediate location 506A-C.

FIG. 6 illustrates an example transporter module 600 including locationsubmodule 602, transportation submodule 604, and cargo submodule 606. Aswill be described in more detail below, location submodule 602 canprovide a tendering edge corresponding to an actual tendering time ateach of pickup location 502, destination location 504, and each possibleintermediate location 506A-C (of FIG. 5). Transportation submodule 604can provide a transportation edge corresponding to an actual transporttime or actual transport cost for each possible route from each ofpickup location 502, destination location 504, and each possibleintermediate location 506A-C. Cargo submodule can provide a cargo edgeproviding a load or unload time of the good at each of pickup location502, destination location 504, and each possible intermediate location506A-C. Location submodule 602 determines an amount of time for aparticular or average transporter to perform tendering good actions atthe pickup location, each possible intermediate location, and thedestination location (“actual tender time”). Tendering good actions atpickup locations relate to transporters arriving at the pickup location,receiving the goods, and returning to their mode of transportation.Likewise, tendering good actions at the intermediate and destinationlocations relate to arriving at the intermediate or destinationlocations and tendering the goods.

For example, in some embodiments, for determining the actual tender timeat the pickup location, location submodule 602 may determine anaggregate amount of time for a particular transporter to park theirvehicle at the pickup location (e.g., hospital), walk a particular placeof the pickup location (e.g., a lab), receive the goods (e.g., scanningand signing for the packages of goods), and return to their vehicle.Likewise, for determining the actual tender time at an intermediatelocation, location submodule 602 may determine an aggregate amount oftime for a particular transporter to park their vehicle at theintermediate location (e.g., airport), walk to a tender location of theintermediate location (e.g., cargo window), and tender the goods (e.g.,wait in line and fill out the appropriate paperwork). Similarly, fordetermining the actual tender time at the destination location, locationsubmodule 602 may determine an aggregate amount of time for a particulartransporter to park their vehicle at the intermediate location (e.g.,airport), walk to the tender location (e.g., a different hospital), walka particular place of the pickup location (e.g., a surgery center), andprovide the goods (e.g., receiving a signature).

Along these lines, in some embodiments, location submodule 602 includeslocation time model 608 to predict the actual tender time at the pickuplocation, each possible intermediate location, and the destinationlocation. In some embodiments, location time model 608 may be amachine-learning model trained on historical tender times for knownpickup, intermediate, and destination locations and known transporters.In some embodiments, location time model 608 may consider that differentpickup, intermediate, and destination locations have differentprocessing times based on, for example, size, wait time, and processingrequirements. Along these lines, location time model 608 may considerthat different transporters take different tender times to at thepickup, intermediate, and destination locations. For example, sometransporters may walk to and from a location quickly, whereas othertransporters may do so slowly.

Further, in some embodiments, for determining the actual tendering time,location time model 608 considers the current waiting times of thepickup, intermediate, and/or destination locations for receiving,tendering, and/or delivering the goods, respectively. Accordingly,location time model 608 may increase any previously determined transporttime by a waiting time for tendering the goods. Also, in someembodiments, location time model 608 may predict the amount of time fornew pickup/intermediate/destination locations (e.g., where transportershave not previously picked up or delivered goods). In doing so, locationtime model 608 may consider publically known data of the newpickup/intermediate/destination location and transporters' historicaltimes for known pickup/destination locations. Publically known data onthe new pickup/destination location may include an average number ofindividuals (e.g., at various times throughout the day) and a size ofthe location.

Transportation submodule 604 determines an actual transport time or anactual cost for a particular or average transporter to transport thegoods from one location to another location (“actual transport time” or“actual transport cost”). The actual transport time and/or actualtransport cost may depend on a mode of transportation (e.g., train, car,and airplane), current transport data (e.g., available routes andcurrent traffic), and transporter's historical transport data (e.g.,average miles per hour and an average amount of travel time). In someembodiments, the actual transport time and/or the actual transport costmay be received from transport provider 104 (of FIG. 1). In someembodiments, transportation submodule 604 may include a transportationtime or cost model 608 to predict the actual transport time or theactual transport cost. Transport time or cost model 608 may be amachine-learning model trained on previously utilized transport data(e.g., used routes, traffic for particular routes, an average speed, andan average amount of travel time) for a particular or averagetransporter utilizing a particular mode of transportation.

Cargo submodule 606 determines an amount of time for loading orunloading goods at the pickup location, each possible intermediatelocation, and the destination location (“actual cargo time”). In someembodiments, cargo submodule 606 includes cargo load submodule 612 andcargo unload submodule 614. Cargo load submodule 612 determines anamount of time for placing and loading goods on a method oftransportation upon receipt from an intermediate location (“actual cargoload time”). For example, upon tendering a particular package to anairport, cargo load submodule 612 determines the amount of time for theairport to place the package on the flight. In some embodiments, thecargo load time may be the method of transportation's cutoff time forreceiving packages (e.g., 1 hour before takeoff). In some embodiments,the cargo load time may be based on the cutoff time, the departure time,and the cargo load time. Also, the cargo load time may be further baseda cargo open and closed time provided by the method of transportation(e.g., 6:00 AM-12:00 AM).

To determine the actual cargo load time, cargo load submodule 612receives the cutoff time, departure time, and/or cargo open and closedtime from transporter provider 104 (e.g., American Airlines, UnitedAirlines, etc.) or a transportation agency (e.g., airport, trainstation, etc.). Accordingly, cargo load submodule 612 may update thecargo load time based on feedback by the transporter provider 104 andthe transportation agency. For example, if a flight is delayed an hour,cargo load submodule 612 will move the cutoff time and departure timeback an hour.

Cargo unload submodule 614 determines an amount of time for unloadingthe goods from a method of transportation (“actual cargo unload time”).Like cargo load submodule 612, cargo unload submodule 614 receives thecargo arrival time, the cargo unload open time, the cargo unload closetime, and/or a transportation agency (e.g., airport, train station,etc.) from transporter provider 104 (e.g., American Airlines, UnitedAirlines, etc.). Accordingly, cargo unload submodule 614 may update theactual cargo unload time based on feedback by the transporter provider104 and the transportation agency.

Referring to FIG. 1, in some embodiments, after associating transportermodule 118's transport data with one or more edges of transportationgraph 500's pickup location 502, destination location 504, possibleintermediate locations 506A-C, and possible transportation segments508A-G (of FIG. 5) (e.g., a tendering edge, a transportation edge,and/or a cargo edge), route generator module 118 may request userpreferences and/or a user value of time from user profile module, whichmay be unique to a user seeking transport of the good. Route generatormodule 118 may then determine an optimal route based on user-selectedservice type 218 (of FIG. 2). As discussed above, user-selected servicetype 218 may be one of a fastest route, a drive only route, an economyroute, and/or a recommended route.

In some embodiments, where user-selected service type 218 is the fastestroute, route generator module 116 may generate a preferred route frompickup location 502 to destination location 504 (of FIG. 5) based on theleast amount of time and/or on the user preference. Route generatormodule 116 may select the preferred route irrespective of the actualcost for transporting the good. For instance, route generator module 116can select segment 508A to route a good from pickup location 502 todestination location 504 although other segments may have a lower cost.Along these lines, if the user prefers a certain mode of transportationor carrier, route generator module 116 can select segments correspondingto the preferred mode of transportation or carrier, although othersegments permit the good to arrive at destination location 504 sooner.

In some embodiments, where user-selected service type 218 is drive-onlyand economy route, the preferred route from pickup location 502 todestination location 504 based on the actual cost and the userpreference. In some embodiments, for the recommended route, routegenerator module 118 generates a preferred route from pickup location502 to destination location 504 (of FIG. 5) based on actual cost, userpreference, and a likelihood of route approval. Along these lines, asillustrated above with respect to FIG. 6, the transport and locationdata may be in the form of time (e.g., minutes) and actual cost (e.g.,dollars). Accordingly, as stated above, in some embodiments, for thedrive-only, economy, and recommended routes, route generator module 116may determine a true user cost relating to the pickup location, possibleintermediate location, destination location, and/or possibletransportation segments. In some embodiments, for the drive-only andeconomy routes, route generator module 116 may determine a cost perinterval of time (e.g., 2 dollars per minute) or a time per monetaryunit (e.g., 2 minutes per dollar). In some embodiments, route generatormodule 116 determine a cost per interval of time or a time per monetaryunit based on previous user orders In some embodiments, the cost perinterval of time may be(Avg$PerMin(OnOperationsOrCustomerApprovedOrders)*ApprovalWeight)+(Avg$PerMin(OnOperationsOrCustomerDisapprovedOrders)*DisapprovalWeight).In some embodiments, when the user is new, route generator module 116may assign a predetermined cost per interval of time (e.g., 2 dollarsper minute) or a predetermined time per monetary unit (e.g., 2 minutesper dollar) for the user.

As such, for the economy and drive-only routes, where there is an actualcost (e.g., dollars) associated with possible intermediate locations506A-C and possible transportation segments 508A-G (of FIG. 5), theclient cost=actual cost x (‘cost per interval of time’ or ‘time permonetary unit’). For example, route generator module 116 may consider afirst and second possible route. The first possible route comprises aflight from pickup location 502 to destination location 504 (“possibletransportation segment 508A”). The second possible route comprises adrive from pickup location 502 to intermediate location 506B (“possibletransportation segment 508B”), a flight from intermediate location 506Bto intermediate location 506C (“possible transportation segment 508C”),and a drive from intermediate location 506C to destination location 504(“possible transportation destination 508G”). Possible segments 508A-Cand G may have an actual cost of $150, $10, $100, and $100,respectively. Further, the waiting times at the intermediate locations506B and 506C may each be 40 minutes. Accordingly, assuming that minuteper dollar is 2, route generator module 116 may determine that the totalclient cost for the first possible route is 300 minutes ($150×2 ‘minutesper dollar’) and that the total client cost for the second possibleroute is 320 minutes (($10×2 ‘minutes per dollar’)+(40 minutes)+($100×2‘minutes per dollar’)+(40 minutes)+10×2 ‘minutes per dollar’)).Accordingly, although the first possible route has a user cost more thanthe second possible route (i.e., $150 vs. $140), route generator module116 will select the first possible route. or example, in someembodiments, for possible intermediate locations 506A-C and possibletransportation segments 508A-G (of FIG. 5) having an associated time butnot the actual cost, the user cost may be equal to weight time x(1/‘handler approval’%). For possible intermediate locations 506A-C andpossible transportation segments 508A-G (of FIG. 5) having an associatedtime and actual cost, the user cost may be equal to ((weight time+(usercost x (‘cost per interval of time’ or ‘time per monetary unit’)))+x(1/‘handler approval’%)).

Further, for the recommended route, route generator module 116 may alsoconsider a likelihood of approval of possible transportation segments508A-D (of FIG. 5) by a handler (“handler approval”). As will bedescribed in more detail, handler approval is required for each route.Accordingly, upon determination of a route, the handler may then reviewthe route and either approve or deny all of it or segments of it. Thus,if the route is approved or denied, all segments in the route are marked“good” or “bad” However, if changed, the unchanged segments are marked“good” and the changed segments are marked “bad.” For example, if a userhas previously submitted user requests and a particular segment hashistorically been approved for the user, the path search algorithm(e.g., A*) will likely prefer the particular segment. However, if aparticular user has not previously submitted user requests, thelikelihood of approval for a particular segment for the particular usermay be based on other users. For example, if the particular user isrequesting transport of a good similar to other transporters where theparticular segment was approved, the likelihood of approval for theparticular segment may be high. However, if the particular user isrequesting transport of a good different from other transporters wherethe particular segment was not approved, the likelihood approval for theparticular segment may be low. By operating in such a fashion, routegenerator module 116 may accurately consider different possible legs androutes that have different times and costs as preferred by the user.

After deriving the transit cost for each segment of the path,irrespective of user-selected service type 218 (of FIG. 2), routegenerator module 116 may utilize a path-finding algorithm to find apreferred route—having one or more segments—among the plurality ofpossible routes having a lowest cost (e.g., transit cost). In someembodiments, the path-finding algorithm may be A*, although otherpath-finding algorithms may be utilized.

Additionally, route generator module 116 may receive updates fromtransport provider 104 on the delay of scheduled transports (e.g.,flights, trains, buses). Likewise, route generator module 116 mayreceive updates from geographical provider 106 relating to drive-onlytransportation (e.g., traffic, road closure, accidents). In someembodiments, route generator module 116 may receive the updates inreal-time. Accordingly, route generator module 116 may update thepreferred route based on the service type 218 (of FIG. 2) (e.g., fastestroute) and/or the user-selected delivery date and time (e.g., Mar. 16,2020, at 2:00 PM EST). Route generator module 116 may then utilize thepath-finding algorithm to see if a new preferred path exists.

FIGS. 7 and 8 are example routes 700 and 800 from pickup location 702and 802 to destination location 704 and 804 generated from geographicaldata module 112 and transporter module 118 (of FIG. 1). As describedabove, in some embodiments, as illustrated in FIG. 6, transporter module600 includes transportation submodule 604, location submodule 602, andcargo submodule 606. Likewise, as also described above, in someembodiments, transportation submodule 604 and location submodule 602includes transportation time model 610 and location time model 608,respectively. Accordingly, referring now to FIGS. 7 and 8, routes 700and 800 are based on location time models 706A-B and 808A-G andtransportation time models 708 and 810A-D.

FIG. 7 is an example drive-only route 700 from pickup location 702 todestination location 704. Location time model 706A and 706B determines atendering time at pick up location 702 and destination location 704.Transportation time model 708 determines a travel time from pickuplocation 702 to destination location 704. As such, a transporter arrivesat pickup location 702 and, after receiving goods, departs at firstpoint in time 710. Thereafter, the transporter arrives at destinationlocation 704, and, after second amount of time 712, tenders goods.

FIG. 8 is an example of route 700 from pickup location 802 todestination location 802 including intermediate, airport locations806A-C. Location time model 808A-G determines a tendering time at pickup location 802, intermediate, airport locations 806A-C, and destinationlocation 804. Specifically, location time model 808A-G determines a timeto do a pickup at pickup location 802, a time to tender the goods to thefirst intermediate location 806A, a time to transfer the goods to cargo,a time idle at the second, intermediate location 806B, a time forunloading at the third, intermediate location 806C, a time to remove thegoods from cargo and provide them ready for pickup from the third,intermediate location 806C, and a time to do the drop at the destinationlocation 804. Transport time model 810A-D determines a travel time frompickup location 802 to first intermediate location 806A, from firstintermediate location 806A to second intermediate location 806B, fromsecond intermediate location 806B to third intermediate location 806C,and from third intermediate location 806C to destination location 804.

Accordingly, a transporter arrives at pickup location 802, receivesgoods, and departs at first point in time 812. The transporter thenarrives at first intermediate location 806A (e.g., first airport). Thegoods are tendered until second point in time 814. The goods are thentransferred via cargo until third point in time 816 so that they areready for transport to second intermediate location 806B (e.g., secondairport). Thereafter, the goods depart from first intermediate location806A (e.g., second airport) to second intermediate location 806B (e.g.,third airport).

After arriving at second intermediate location 806B (e.g., secondairport), route 800 has a layover. As such, the goods depart from secondintermediate location 806B (e.g., second airport) at fourth point intime 818 to third intermediate location 806C (e.g., third airport). Uponarriving at third intermediate location 806C (e.g., third airport),goods are transferred via cargo until fifth point in time 820 so thatthey are ready for pickup by a transporter for delivery to destinationlocation 804. The transporter thus arrives at the third intermediatelocation 806C, receives the goods, and departs to the destinationlocation 804 at sixth point of time 822. After arrival at destinationlocation 804, transporter drops off the goods to an authorizedindividual at seventh point of time 828.

Referring back to FIG. 1, during and/or after the appropriate route froma pickup location to a destination location, transporter application 120receives requests from transporters—via user devices 108A-C—fortransporting goods from a pickup location to an intermediate location(e.g., an airport) or a destination location. As such, transporterapplication 120 may provide instructions to transporters via userdevices 108A-C during their route, as will be discussed in more detailbelow. Accordingly, after the submission of an order of goods asdescribed above with respect to FIGS. 1-4, transporter application 120communicates with transporter module 118 to identify an appropriatetransporter for transporting goods from the pickup location to theintermediate or destination locations.

Referring now to FIG. 6, to identify the appropriate transporter,transporter module 600 further includes transporter submodule 616. Afterusers submit orders, transporter submodule 616 identifies availabletransporters within a predetermined distance from the pickup orintermediate, for example, by tracking their location through userdevices 106A-C (of FIG. 1). The available transporters may be assignedto another job. In other words, the available transporters may havepicked up or be scheduled to pick up goods for another job from adifferent or same pickup location. Likewise, the available transportersmay be scheduled to transport goods for another to a different or sameintermediate or destination location. FIG. 9 illustrates exampleavailable transporters 906A-C within predetermined distance 902 frompickup or intermediate location 904.

Referring to FIG. 6, transporter submodule 616 may then determine if thenumber of identified available transporter meets or exceeds apredetermined number of available transporters. Transporters may relateto an individual or a carrier. In some embodiments, if the number ofidentified available transporters does not meet or exceed apredetermined number of drivers, transporter submodule 616 may expandthe searchable range by a predetermined distance. Alternatively, if thenumber of identified available transporters does not meet or exceed apredetermined number of available transporters, transporter submodule616 may expand the searchable range until the predetermined number ofavailable transporters is met. The predetermined distance may 5 miles,10 miles, 19 miles, or 50 miles, to provide a few examples. Thepredetermined number of available transporters may be 5, 10, 15, or 20,to provide a few examples.

Transporter submodule 616 may then identify eligible transporters fortransporting the goods from the available transporters. As discussedabove, the goods may require special handling by the transporters. Forexample, the goods may be fragile (e.g., glass) or an organ (e.g., aheart). Further, the goods may be heavy (e.g., furniture) or needrefrigeration (e.g., produce and human tissue) and thus require specialtransportation. Likewise, the goods may be of a certain size (e.g., acar) and thus need a suitable size carrier. As such, transportersubmodule 616 may ensure that the available transporters have theappropriate certifications and/or are of the appropriate kind ofcarriers (e.g., a vehicle or a truck). Thus, transporter submodule 616may filter through the available transporters for eligible transporters,for example, those that have the proper certification and/or are of theappropriate type of carriers. Transporter submodule 616 may thendetermine if the number of eligible transporters meets or exceed apredetermined number of eligible transporters. If not, as discussedabove, the searchable range is expanded by a predetermined distance oruntil the predetermined number of eligible transporters is met.

Transporter submodule 616 may then determine if the eligibletransporters are solicitable. Eligible transporters are solicitable ifthey are able to transport the good to the pickup location, intermediatelocation, or destination location by a time specified by modelgeneration module 116 (of FIG. 1) or a user in the request. Further, asmentioned above, eligible transporters may include those transporting orscheduled to transport other orders. Accordingly, these eligibletransporters are solicitable if they are, or will be, going to the samepickup location, intermediate location, or destination location.Further, eligible transporters assigned other jobs are solicitable ifthey can complete transport all jobs by their specified times.

Accordingly, to identify solicitable transporters, transporter submodule616 determines an estimate completion time (ECT) for completingtransport of all jobs for each eligible transporter. As such, for aneligible transporter not transporting any other orders, transportersubmodule 616 determines an ECT for a transporter to pick up and deliverthe solicited order. For an eligible transporter transporting otherorders, transporter submodule 616 determines an ECT for a transporter topick up the orders from the pickup location and deliver the orders tothe intermediate and destination locations in any sequence. To determinethe ECT, transporter module 610 can utilize a trained transporter model.

To determine the ECT, transporter submodule 616 can utilize a trainedtransporter model. In some embodiments, the trained transporter modelcan include transportation submodule 604's transportation time model 610and/or location submodule 602's location time model 608. As discussedabove, transportation time model 610 determines an estimated amount oftime for transporters to transport the goods to the pickup and/orintermediate locations (“an estimated transport time”). Accordingly, asillustrated in FIG. 9, transportation time model 610 (of FIG. 6) maydetermine particular routes 908A-C for transporters 902A-C to travel topickup location or intermediate location 906. Location time model 608determines an estimated amount of time for transporters to tender thegoods at pickup and/or intermediate locations (“an estimated tendertime”).

In some embodiments, transporter submodule 616's trained transportermodel can also include transporter acceptance time model 618 andtransporter acceptance chance model 620. Transporter acceptance timemodel 618 predicts an estimated amount of time that it will take atransporter to accept a solicitation for a job (“an estimatedtransporter acceptance time”). In some embodiments, transporteracceptance time model 618 may be based on a predetermined time providedto solicited transporters (e.g., 90 seconds). In some embodiments,transporter acceptance time 618 is based on an output provided bytransporter acceptance chance model 620, which may represent alikelihood of a particular solicitable transporter accepting the job. Insome embodiments, solicitation acceptance time model 620 may be equal toa predetermined solicit time x (1/a likelihood of solicitabletransporter acceptance). In some embodiments, transporter acceptancechance model 620 may be trained on historical data of the particularsolicitable transporter accepting previous jobs, for example, at certainhours of the day.

Therefore, the ECT may be a total of an estimated tender time, anestimated transport time, and/or an estimated solicitation acceptancetime. Along these lines, where the solicitable transporter is scheduledto transport multiple jobs, transporter submodule 616 may derive the ECTfor completing transport for picking up and delivering orders to thedestination or intermediate locations in every possible sequence. Afterdoing so, transporter application 120 selects the sequence of eventshaving the least amount of time to represent the time the solicitabletransporter may perform the jobs.

For example, if the solicitable transporter was previously assigned“jobA” and is currently being solicited for “jobB,” transportersubmodule 616 may determine an ECT for each of the followingsequences—(i) picking up “jobA,” picking up “jobB,” delivering “jobA,”and delivering “jobB,” (ii) picking up “jobA,” picking up “jobB,”delivering “jobB,” and delivering “jobA,” (iii) picking up “jobA,”delivering “jobA,” picking up “jobB,” and delivering “jobB,” (iv)picking up “jobB,” picking up “jobA,” delivering “jobA,” and delivering“jobB,” (v) picking up “jobB,” picking up “jobA,” delivering “jobB,” anddelivering “jobA,” and (vi) picking up “jobB,” delivering “jobB,”picking up “jobA,” and delivering “jobA.” Accordingly, if the ECT forsequences (i), (ii), (iii), (iv), (v), and (vi) is 120 minutes, 170minutes, 130 minutes, 90 minutes, and 160 minutes, respectively,transporter application 120 may select sequence (iii) as representingthe transporter for the amount of time it can complete “jobA” and“jobB.”

Along these lines, to compare multiple solicitable transporterspreviously assigned other jobs, transporter submodule 616 may select thesolicitable having the shortest ECT for completing the solicited offer.For example, solicitable transporters “X” and “Y” may have beenpreviously assigned “jobA” and “jobB,” respectively, and are currentlybeing solicited “jobC.” As such, transporter submodule 616 may determinethat transporter “X”'s ECT for completing “jobA” and “jobC” is 120minutes, and that transporter “Y”'s ECT for completing “jobB” and “jobC”is 180 minutes. In some embodiments, transporter submodule 616 maydetermine that transporter “X”'s and “Y”'s ECT for completing “jobC” is70 minutes and 90 minutes, respectively. Accordingly, althoughtransporter “X”'s ECT for completing both jobs is shorter thantransporter “Y”'s ECT, transporter submodule 616 may select transporter“Y” since transporter “Y” ECT for completing the transport of thesolicited job—i.e., “jobC”—is shorter. In some embodiments, transportersubmodule 616 may determine that transporter “X”'s and “Y”'s ECT forcompleting “jobA” is 120 minutes and 90 minutes, respectively.Transporter submodule 616 may also determine that the transporter “X” isto complete “jobA” then “jobB” and that transporter “Y” is to complete“jobB” then “jobA.” Accordingly, although transporter “Y” is to complete“jobB” after a previously assigned order, transporter “Y” may still beselected over transporter “X.”

Along these, transporter submodule 616 may consider solicitabletransporters previously assigned other orders and solicitabletransporters not previously assigned other orders. Transporter submodule616 may then select the solicitable transporter having the least ECT forcompleting transport of the solicited job as a preferred pickuptransporter. For example, transporter submodule 616 may considertransporters “A” and “B.” Transporter “A” may have been previouslyassigned “jobA” and is being solicited for “jobB.” Transporter B is onlybeing solicited for “jobB.” Accordingly, transporter submodule 616 maydetermine that the ECT for transporters “A” and “B” for completingsolicited offer “job” is 80 minutes and 100 minutes, respectively. Assuch, transporter submodule 616 may select transporter “A,” although ithas been assigned another job (i.e., “jobA”) and may deliver the otherbefore the solicited job (i.e., “jobB”).

Transporter submodule 616 may then send a request to the preferredtransporter to transport the order. In some embodiments, transportersubmodule 616 may wait a predetermined amount of time (e.g., 90 seconds)for acceptance. If the solicited transporter does not accept the offer,transporter submodule 616 may then restart the process to determine anappropriate transporter (i.e., identify available transporters, identifyeligible transporters from the available transporters, etc.). In doingso, the transporter may be considered again for solicitation, albeit theacceptance chance model may derive a lower likelihood of accepting thejob based on their lack of acceptance previously, thus being less likelyto be solicited again.

FIGS. 10-21 illustrate example user interfaces 1000, 1100, 1200, 1300,1400, 1500, 1600, 1700, 1800, 1900, 2000, and 2100 of a transporterapplication 120 (of FIG. 1), according to some embodiments. Referringnow to FIG. 10, user interface 1000 may include status indicator 1002and/or vehicle type 1004. Status indicator 1002 may permit a transporterto indicate availability for the transporting of goods. In someembodiments, status indicator 1002 may permit date and/or time for whichthe transporter will be available. Vehicle type 1004 may permit atransporter to provide vehicle information for which the transporterwill deliver goods. The vehicle information may include a year, a make,a model, and any other type of special handling (e.g., refrigeration).

Referring now to FIG. 11, upon assignment of a particular job totransport goods, user interface 1100 may be provided. User interface1100 may receive notification 1102 of solicitation of a job.Notification 1102 includes a pickup time and/or date and an option to“view” or “dismiss” the job. If the “view” option is selected, the userapproves the job. However, if the “dismiss” option is selected, the userrejects the job.

Referring now to FIGS. 12 and 13, upon viewing (or approving) aparticular job, user interfaces 1200 and/or 1300 may be presented. FIG.12 illustrates user interface 1200 including special instructionsnotification 1202 of the job. As illustrated, special instructionsnotification 1202 may be provided before viewing of the details of thejob, as shown in detail in FIG. 13. As noted above, the specialinstructions may be provided by a user when submitting a request, or, aswill be discussed in more detail below, by an authorized user inprocessing the request. This confirms that the transporter views thespecial instructions.

FIG. 13 illustrates user interface 1300 providing details of the job forthe transporter. User interface 1300 includes pick up location 1302,pick up time 1304, arrival button 1306, order number 1308, referencenumber 1310, goods information 1312, special instructions 1314, takephoto option 1316, and/or tender information 1318. Pick up location 1302may be a current location of goods. Pickup time 1304 may be a requiredamount of time for the transporter to arrive at arrival location 1302.In some embodiments, pickup time 1304 may be based on traffic andavailable routes received from geographical provider 106 (of FIG. 1).Further, pickup time 1304 may be no greater than a predetermined amountof time (e.g., one hour). This may be important for time-criticalshipment of goods (e.g., a heart). Arrival button 1306 permitstransporters to indicate arrival at the pickup location. Order number1608 may an internal number for reference by authorized users and/or forprocessing by central server 102 (of FIG. 1). Reference number 1310 maybe an external number for client use. Goods information 1312 permitstransporters to view data relating to the goods. Good information mayinclude a number of packages, a size of the packages, a weight of thepackages, a tracking number, and identification information, to providea few examples. Take photo option 1316 permits transporters to takephotos of goods. Upon receipt of photos, central server 102 maydetermine if the goods are the appropriate goods for transport. Tenderinformation 1318 permits transporters to view any information relatingto a location for tendering the goods. As illustrated, in someembodiments, tender information 1318 may include a tender time and/orlocation. As noted above, transporters may not be aware of particularsof a job, such as a tender location, until acceptance of the job.

Referring now to FIG. 14, upon arrival to a designated location (e.g.,pick up location or intermediate location), prompt 1402 may be provided.As such, prompt 1402 may be automatically provided upon user device 108A(of FIG. 1) (e.g., a mobile device) detecting the presence oftransporter at the designated location via location tracking oftransporter device 108A through transporter application 120 (of FIG. 1).Prompt 1402 may confirm that the transporter is at the designatedlocation.

Referring now to FIG. 15, upon selection of arrival button 1310 (of FIG.13) or confirming arrival via prompt 1402 (of FIG. 14), user interface1500 may be provided. Like user interface 1300, user interface 1500provides arrival location 1502, pickup time 1504, order number 1506,reference number 1508, goods information 1510, special instructions1512, take photo 1514, and/or tender information 1516. User interface1500 may also present next step option 1518 and/or waiting option 1520.Next step option 1518 may be selected when the goods are ready fortransport and/or received by the transporter. In some embodiments, nextstep option 1518 may not be selected until the transporter application120 (of FIG. 1) confirms the transporter is at the pickup location. Theconfirmation may be accomplished by tracking a location of transporter'suser device 106A (of FIG. 1) and/or receiving an indication from thedesignated location. Waiting option 1520 may be selected when the goodsare not ready for transport.

Referring now FIG. 16, upon selection of waiting option 1520 (of FIG.15), user interface 1600 is provided. User interface 1600 tracks awaiting time 1602 at the designated location for the transporter toreceive the goods. In some embodiments, when the transporter waitspredetermined amounts of time (e.g., fifteen minutes), the transporteris to receive a predetermined additional amount of monies. Like userinterface 1500, user interface 1600 may also include arrival location1604, order number 1606, reference number 1608, goods information 1610,special instructions 1612, take photo 1614, tender information 1616,and/or next step option 1618.

After selecting user interface 1500's next step option 1518 or userinterface 1600's waiting option 1618, transporter may be prompted toenter a unique package number (e.g., an order number), take a picture ofa code, and/or scanning a code via user device 106A (of FIG. 1).Thereafter, as illustrated in FIG. 17, user interface 1700 may providegood information. Upon doing so, central server 102 (of FIG. 1) mayverify that the transporter is picking up the correct package.Subsequently, transporter application 120 (of FIG. 1) may requirereceiving a name and/or signature of an authorized receiver at thepickup location via user device 106A.

Referring now to FIG. 18, after the goods are verified, user interface1800 may be provided. User interface 1800 may provide information fortransporting the picked up goods to the tender location (e.g., anintermediate location or a destination location). User interface 1800may also include tender location 1802, transport information 1804,cutoff time 1806, and/or arrival button 1808. Tender location 1802 is anintermediate or destination location. When the tender location 1802 isan intermediate location, transport information 1804 may providetransport information for the transport of the goods from theintermediate location to the next intermediate location or thedestination location. For example, as illustrated, transport information1804 may include a flight transporting the goods. Along these lines,cutoff time 1806 may be the latest time at tender location 1802 forreceipt goods. As such, cutoff time 1806 may be based on transportinformation. For example, if a flight is delayed, cutoff time 1806 maybe adjusted accordingly. Arrival button 1808 may provide an indicationthat the transporter has arrived at the tender location.

Like user interface 1600, user interface 1800 may also include ordernumber 1810, reference number 1812, good information 1814, and/or takephoto 1816. User interface 1800 may further include transport billexample 1818. As indicated above, transporters may tender goods to anintermediate location for further transport by a transportation companyutilizing a mode of transportation. The intermediate location, thetransportation company, or the mode of transportation may require aunique transport bill. For example, Delta Airlines, United ParcelService, Delta Airlines, and United Airlines may all have differenttransport bills. As such, transport bill example 1818 may assist thetransporter in accurately completing unique transport bills at thetender location so that there are no issues in tendering the goods.

Referring now to FIG. 19, upon selection of user arrival button 1808(FIG. 18), user interface 1900 may be provided. Like user interface1800, user interface 1900 may provide information for transporting thepicked up goods to the tender location (e.g., an intermediate locationor a destination location). As such, user interface 1900 may includetender location 1902, transport information 1904, cutoff time 1906,order number 1908, reference number 1910, good information 1912,transport bill example 1914, and/or take photo 1916. Further, like userinterface 1800, user interface 1900 may provide next step option 1918and/or waiting option 1920. Next step option 1918 is to be selected whenthe goods are received by the tender location. In some embodiments, nextstep option 1918 may not be selected until the transporter application120 (of FIG. 1) confirms the tender location received the goods. Waitingoption 1920 is to be selected when the transporter is waiting to tenderthe goods at the tender location.

Referring again FIG. 16, upon selection of waiting option 1918 (of FIG.19), user interface 1600 is provided. User interface 1600 provides awaiting time 1602 at the tender location for the transporter to tenderthe goods. In some embodiments, when the transporter waits predeterminedamounts of time (e.g., fifteen minutes), the transporter is to receive apredetermined additional amount of money.

After selecting user interface 1900's next step option 1918 or userinterface 1600's next step option 1618, the transporter may be promptedto enter a unique package number (e.g., an order number), take a pictureof a code, and/or scanning a code via user device 106A (of FIG. 1).Thereafter, as illustrated in FIG. 17, user interface 1700 may providegood information. Upon doing so, central server 102 (of FIG. 1) mayverify that the transporter is picking up the correct package.Subsequently, transporter application 120 (of FIG. 1) may requirereceiving a name and/or signature of an authorized receiver at thepickup location via user device 106A.

Referring now to FIG. 20, after verification by the central server 102(of FIG. 1), user interface 2000 may be provided. User interface 2000may include package accepted button 2002, unable to delivery button2004, and/or airway bill example button 2006. Upon indicating thepackage is accepted via package accepted button 2002, the transportermay be required to enter an airway bill number and/or provide a pictureof the airway bill.

Referring now to FIG. 21, after tendering the package at the tenderlocation, user interface 2100 may be provided. User interface may 2100provide a transporter with the reward. As illustrated, the reward may bean amount of money. However, the reward may also be a number of pointsor any other type of token for service. As such, transporters may not beaware of their reward until after tendering the goods at the tenderlocation or attempting to do so. Further, as explained above, the rewardmay be based on their weighting times at the pickup location and/ortender location. Further, the reward may be based on a length of thetrip, a time duration of the trip, a length of the trip, and/or theimportance of the goods. Along these lines, the reward may be reduced ifthe transporter does not arrive at the pickup and/or dispatch locationby the specified time.

Referring back to FIG. 1, transport manager application 122 permitsauthorized users—via user devices 108A-C—to track and/or manage ordersfor the transport of goods. Accordingly, upon submission of an order asdescribed with respect to FIGS. 2-4, transport manager application 122may receive an order for the transport of goods. Transport managerapplication 122 may assign the order to a predetermined order type basedon the type of goods and/or the mode of transportation. For example,some goods require special handling (e.g., refrigeration, chemicals,body parts), whereas other orders may be of a special type (e.g.,healthcare orders or medical orders). Accordingly, by assigning theorder to an appropriate order type, transport manager application 122may ensure that an appropriate operational team member (e.g.,handler)—having the requisite skill and knowledge—to monitor thetransport of the order.

In some embodiments, transport manager application 122 may assign theappropriate operational team members to the orders. Alternatively,transport manager application 122 may allow the appropriate operationalteam member to select an order to monitor. Along these lines, multipleoperational team members may work on orders during transport of thegoods from the pickup location to the destination location.

Further, in some embodiments, transport manager application 122 mayreceive preferred routes from route generator module 116. Transportmanager application 122 may also permit appropriate operational teammembers to approve, create, and/or modify determined preferred routes.Further, transport manager application 122 may permit appropriateoperational team members to assign transporters for the transport of theorder. Similarly, transporter manager application 122 may permitauthorized users to assign tasks to transporters. In doing so,transporter manager application 122 may provide transporters an amountof money for completing or attempting to complete the assigned tasks.

Further, to monitor the transport of orders, transport managerapplication 122 may receive updates from the transporters on the statusof the transport. In some embodiments, transport manager application 122may receive updates from transport provider 104 on the delay ofscheduled transports (e.g., flights, trains, buses). Likewise, in someembodiments, transport manager application 122 may receive updates fromgeographical provider 106 relating to drive-only transportation (e.g.,traffic, road closure, accidents). Further, in some embodiments,transport manager application 122 may receive updates from thetransporters—via user devices 108A-C—scheduled to pick up goods from thepickup and/or intermediate locations. For example, the transporters maynot have been departed to and/or from the pickup and/or intermediatelocations by the designated time. Accordingly, in some embodiments,transport manager application 122 may receive updates from transportprovider 104, geographical provider 106, and/or user devices 108A-C inreal-time.

By operating in such a fashion, transport manager application 122 maypermit appropriate operational team members to monitor orders duringtheir transport. In doing so, in some embodiments, transport managerapplication 122 may assign scheduled actions to the orders. Transportmanager application 122 may also receive scheduled actions for theorders from the appropriate operational team members. Scheduled actionsmay relate to a required operation from a transporter departing to,arriving at, and/or departing from a pickup location, an intermediatelocation, and/or destination location. As such, in some embodiments, thescheduled actions may relate to a specific time. Accordingly, transportmanager application 122 may sort the orders based on their upcoming timeand assign them a color based thereon (e.g., green, yellow, and red).

FIGS. 22-25 illustrate user interfaces 2200, 2300, 2400, and 2500provided by transport manager application 122 (of FIG. 1). FIG. 22illustrates user interface 2200 for tracking orders 2202 in real-time.User interface 2260 provides order types 2204A-J and allows handlers toselect and view orders of the different order types 2204A-J. Each ordertype 2204A-J may require different handling and/or skill. As such,operational teams may be trained to manage and/or handle differentgroups of order types 2204A-J. As such, operational team members (e.g.,handlers) may select or be assigned orders.

As illustrated, order types 2204A-J may include active orders 2204A,ground orders 2204B, next flight out (NFO) orders 2204C, fright orders2204D, healthcare orders 2204E, immediate (STAT) orders 2204F, medicalcollection (MCP) orders 2204G, routed orders 2204H, escalated orders2204I, and/or will call orders 2204J. All orders 2204A may relate allorders currently being processed. As such, all orders 2204A includesground orders 2204B, NFO orders 2204C, fright orders 2204D, healthcareorders 2204E, STAT orders 2204F, MCP orders 2204G, routed orders 2204H,and/or escalated orders 2204I. Ground orders 2204B relates to orders ofgoods being transported by ground. As such, ground order 2204B relatesto orders of goods whose routes do not have a segment and have a mode oftransportation other than ground (e.g., a flight segment). NFO orders2204C relates to orders of goods to be transported by flight and notrequiring special handling. Freight orders 2204D relate to orders ofgoods needing special handling. For example, freight orders 2204D may beabove a predetermined weight (e.g., 100 lbs.), greater than apredetermined dimension (e.g., 5 FT×5 FT×FT), call for a controlledtemperature (e.g., less 29° F.), and require secure shipment, to providea few examples.

Healthcare orders 2204E may relate to orders of healthcare goods, whichmay or may not require special handling. STAT orders 2204F may relate togoods to be transported at predefined times (e.g., 8:00 AM and 4:00 PM)and/or places (e.g., hospitals, doctor offices, and pharmacies). MCPorders 2202G relate to orders of goods that require skill bytransporters. In some embodiments, for example, the packages may containblood or a bodily tissue. Routed orders 2204H relates to orders havingpredetermined routes required to be followed by transporters. Forexample, where the transporter has multiple orders and must pickup oneorder up or drop one order off in a particular sequence, the orders maybe considered routed orders 2204H. Escalated order 2204I relates to anyorder manually escalated by an authorized user. As such, escalated order2204I may include ground orders 2204B, NFO orders 2204C, fright orders2204D, healthcare orders 2204E, STAT orders 2204F, MCP orders 2204G,and/or routed orders 2204H. Will call orders 2204J may be orders ofgoods submitted via will call by users, as described above with respectto FIG. 2. Will call orders 2204J are not active orders 2204A.

User interface 2200 presents all orders 2202 categorized under allorders group 2204A. For each order 2202, user interface 2200 provideshandler 2206, order number 2208, status indicator 2210, currenttransporter 2212, target location 2514, and/or scheduled action 2216.Handler 2206 may an individual or member of the appropriate operationalteam in charge of the order of goods. Order number 2208 may be a uniquealphanumeric number generated by central server 102 (of FIG. 1) for theorder. Status indicator 2210 may provide an indication of where thegoods are in the route generated by central server 102. For example, thegoods may be at a pickup location, in transport to an intermediatelocation, at an intermediate location, in transport to a destinationlocation, and/or at a destination location. Current transporter 2212 mayrefer to a specific transporter transporting the good at a particulartime. Target location 2516 may refer to a current pickup location,intermediate location, or delivery location being traveled to by thetransporter currently transporting the good. Scheduled action 2216 maybe a follow-up action provided by handler 2206. The follow-up action mayspecify a desired time to perform the action.

In some embodiments, although not illustrated, orders 2202 may bedesignated a predetermined color based on a transportation status and/orstatus action. The transportation status may relate to a departure time,pick up time, and/or a tender time. As discussed above, the transportermay be required to depart from their current location or an intermediatelocation at a specific departure time. Likewise, the transporter may berequired to pick up goods at a pickup location at a specific pick uptime. Further, the transporter may be required to tender the package atan intermediate location (e.g., an airport) at a specific tender time.As such, the orders 2202 may change colors based on the transportationstatus. In some embodiments, the predetermined colors may be red,yellow, or green. The designated color may be selected based onpredetermined rules. For example, an order of goods may be green untilreaching a predefined threshold and thereafter change to yellow.Thereafter, after reaching another predefined threshold, the order ofgoods may change to red. This may allow assigned handlers or otherauthorized users to track the orders of goods.

Referring now to FIG. 23, after the selection of a particular order 2202(of FIG. 22) by a handler, user interface 2300 may be presented. Userinterface 2300 may include assigned handler 2302, order number 2304,order status 2306, user information 2308, actions required 2310,commodity type 2312, reference number 2314, attached documents 2316,and/or goods information 2318. Order status 2306 may be updated inreal-time and be one of a predetermined number of events, such as thoseillustrated status indicator 2210 (of FIG. 22). User information 2308may include contact information of a user requesting the transport ofgoods. Actions required 2310 may include actions required by a handler.Commodity type 2312 may relate to a good type. Reference number 2314 maybe a tracking number for a particular package of goods of the orderbeing transported. In some embodiments, an order may include multiplepackages having different tracking numbers. Attached documents 2316 maybe documents relating to the transport of the goods and may be uploadedby the transporter (e.g., airway bill) and/or handler (e.g., airway billexample). As such, user information 2308, commodity type 2312, and/orgoods information 2318 may be provided via a user request at userinterface 200 (of FIG. 2).

User interface 2300 may also include segment information 2316A-C forsegments of a route from a pickup location to a destination location. Insome embodiments, as illustrated, segment information 2316A relates topicking up the goods, segment information 2316B relates to tendering thegoods at an intermediate location (e.g., an airport), and/or segmentinformation 2316C relates to delivering the goods to a drop offlocation. As such, segment information 2316A includes transporterinformation (e.g., a name, a license plate, and/or a type of vehicle), apickup address, a pickup contact, pickup instructions, a pickup window,and/or assessorials. Segment information 2316B includes information ofthe intermediate location. For example, when the intermediate locationis an airport, segment information 2316 may include flight information(e.g., departure time, arrival time, departure location, arrivallocation, and flight number), and airway bills. Segment information2316C includes a transporter delivery address, a delivery contract,delivery instructions, an original quoted delivery time, an updateddelivery time, a proof of delivery, and assessorials.

As stated above, segment information 2316A and 2316C may includetransporter information. In some embodiments, as described above, uponsubmission of orders by users, the central server 102 (of FIG. 1) mayautomatically select the appropriate transporter. Segment information2316A and 2316C may also permit members to manually dispatchtransporters 2320. As such, referring now to FIG. 24, eligible andineligible transporters 2402 may be provided. For each transporter 2402,user interface 2400 may provide a rating, an availability, and/or anestimated time of arrival.

Referring back to FIG. 23, via assessorials, segment information 2316Aand 2316C permits assigned handlers to provide or select tasks (e.g.,picking up dry ice for medication and/or printing documents) fortransporters of goods. The handlers may reward the transporters forperforming the tasking or attempting to do so, for example, by providingthem a selected or predetermined amount of money. As explained above,the reward amount may be unknown to the transporter until completion ofthe transport.

User interface 2300 may permit handlers to provides notes 2320, digest2322, and/or special operational instructions (SOP) 2324. Notes 2320 maybe provided by handlers for themselves or future handles. Digest 2322may be automatically generated by transport manager application 122 (ofFIG. 1) in real-time and may include a particular action and associatedtime and/or date for the performance of the action. As illustrated inFIG. 25, user interface 2500's digest 2502 may include events performedby transporters (e.g., leaving starting locating, arriving at pick uplocation, departing pick up location, arriving at tender location, andcompleting tender) and/or handlers (e.g., uploading tender documents,changing follow-up time, and changing delivery address). SOP 2324 may beprovided handlers and/or users. As such, notes 2320 and/or SOP 2324 maybe provided and performed by different handlers

FIG. 26 is a flowchart for method 2600 for managing the transport ofgoods, according to some embodiments. FIG. 27 is a flowchart for method2700 for transporting a good from a pickup location to a destinationlocation, according to some embodiments. FIG. 28 is a flowchart formethod 2800 for identifying an appropriate transporter of a good,according to some embodiments. FIG. 29 is a flowchart for method 2900for minimizing a risk of a good being delivered past a requested time,according to some embodiments Method 2700, 2800, and 2900, can beperformed by processing logic that can comprise hardware (e.g.,circuitry, dedicated logic, programmable logic, microcode, etc.),software (e.g., instructions executing on a processing device), or acombination thereof. It is to be appreciated that not all steps may beneeded to perform the disclosure provided herein. Further, some of thesteps may be performed simultaneously or in a different order than shownin FIGS. 26-29, as will be understood by a person of ordinary skill inthe art.

Referring now at FIG. 26, method 2600 shall be described with referenceto FIGS. 1, 2, 5, 12, and 25. However, method 2600 is not limited tothat example embodiment.

At 2602, central server 102 receives a request for transporting a goodfrom a user. The request includes a pickup location (e.g., pickupaddress 206), a destination location (e.g., destination address 210), auser preference, and an arrival time preference.

At 2604, central server 102 determines a preferred route for transportof the good from the pickup location 502 to the destination location 504based on the user preference such that the good arrives at thedestination location 504 by arrival time preference. In someembodiments, the preferred route may include one or more intermediatelocations 506A-C.

At 2606, central server 102 dispatches transporter 906A to the pickupthe good from a location (e.g., pickup location 904). Transporter 906Amay be selected from many transporters 906A-C based on a quickestarrival time to the good's location. In some embodiments, transporter906A may be further from pickup location 1204. In some embodiments,transporter 906A may have been previously assigned goods for anotherorder to pick up and/or delivery. As such, in some embodiments,transporter 906A may be considered among other transporters 906B and906C not previously assigned goods for other orders to pick up and/ordelivery.

At 2608, central server 102 creates a record of the order 2502 so thatpreselected handlers 2206 may track the transport of the good andconfirm that the good arrives at the destination location by the arrivaltime preference. The assigned handler may be selected based on the typeof product.

Referring now at FIG. 27, method 2700 shall be described with referenceto FIGS. 1, 2, and 5. However, method 2700 is not limited to thatexample embodiment.

At 2702, user request application 114 receives a request for transportof a good from a user. The request includes pickup location (e.g.,pickup address 204) and destination location (e.g., destination address210). In some embodiments, the request may include a user preference(e.g., a particular airline or mode of transportation) and/or an arrivaltime preference. Alternatively, central server 102 may determine userpreference and/or arrival time.

At 2704, route generator module 116 identifies a first pickup node, afirst intermediate node, a second intermediate node, and a delivery nodeon a pre-generated graph corresponding to the pickup location 502, afirst intermediate location 506A, a second intermediate location 506B,and the delivery location 504.

At 2706, route generator module 116 identifies one or moretransportation edges relating to a transit cost associated with acorresponding one of the pickup location, the first intermediatelocation, the second intermediate location, and the destinationlocation. As such, each of the plurality of transportation edgescorresponds to one of the pickup node, the first intermediate node, thesecond intermediate node, and the destination node such that each of thepickup node, the first intermediate node, the second intermediate node,and the destination node corresponds to the transit cost.

At 2708, route generator module 116 calculates a first actual cost fortransporting the good from pickup location 502 to intermediate location506A based on the user preference and/or the transport data. In someembodiments, route generator module 116 calculates a first actual costfor transporting the good from the pickup location to each possibleintermediate location 506A-C.

At 2710, route generator module 116 generates a subgraph of thepre-generated graph including the pickup node, the first intermediatenode, the second intermediate node, the destination node, and/or theplurality of transportation edges.

At 2712, route generator module 116 generates a preferred route from thepickup location to the destination location having a lowest transit costof transporting the good from the pickup location to the destinationlocation based on the subgraph.

Referring now at FIG. 28, method 2800 shall be described with referenceto FIGS. 1, 2, and 12. However, method 2800 is not limited to thatexample embodiment.

At 2802, transporter module 118 receives a request to initiate an autodispatch process for picking up a good of a order. The request includesthe first good, a pickup location (e.g., pickup address 204), and adelivery destination (e.g., an intermediate location or destinationaddress 210). In some embodiments, the request may include a userpreference (e.g., a particular airline or mode of transportation) and/oran arrival time preference. Alternatively, central server 102 maydetermine user preference and/or arrival time.

At 2804, transporter module 118 identifies first and second transporter906A and 906B within a predetermined distance from pickup location 904of the good or intermediate locations 606A-C during route of the order'sgood. In some embodiments, second transporter 1202A can be transportinga good of another order. Second transporter 902A can be in the processof performing another job. For example, second transporter 902 can bepicking up another order's good the same or different pickup location904/intermediate location 606A-C. Second transporter can be transportingthe other order's good to the same or different delivery destination(e.g., an intermediate location or destination address 210).

At 2806, transporter module 118 determines that first and secondtransporters 906A and 906B are eligible for transport based on the good.As discussed above, the goods may require special handling by thetransporters. For example, the goods may be fragile (e.g., glass) or anorgan (e.g., a heart). Further, the goods may be heavy (e.g., furniture)or need refrigeration (e.g., produce) and thus require specialtransportation. Likewise, the goods may be of a certain size (e.g., acar) and thus need a suitable size carrier.

At 2808, transporter module 118 derives an estimated completion time(ECT) for first and second transporters 906A and 906B to transport thefirst good from the pickup location to the delivery destination. In someembodiments, first transporters 906B may have been previously assignedanother job (i.e., to pick up deliver goods to the same and/or differentlocations).

At 2810, transporter module 118 determines that the first and secondtransporters 906A and 906B are solicitable based on the ECT for thefirst and second transporters 906A and 906B.

At 2812, transport module 118 selects the second transporter 1202B basedon the ECT of the first and second transporters 906A and 906B.Accordingly, in some embodiments, second transporter 1202—previouslyassigned another job—may be selected over first transporter 906A—notpreviously assigned any jobs.

Referring now at FIG. 29, method 2900 shall be described with referenceto FIGS. 1, 2, and 25. However, method 2900 is not limited to thatexample embodiment.

At 2902, transport manager application 122 receives a request fortransport of a good from a user. The request includes pickup location(e.g., pickup address 204) and destination location (e.g., destinationaddress 210). In some embodiments, the request may include a userpreference (e.g., a particular airline or mode of transportation) and/oran arrival time preference. Alternatively, central server 102 maydetermine user preference and/or arrival time.

At 2904, transport manager application 122 places a record 2502 of therequest for transport in a queue. Before doing so, central server 102may derive a preferred route from the pickup address 204 to destinationaddress 210. In some embodiments, the route

At 2906, transport manager application 122 assigns the order to handler2506. In some embodiments, transport manager application 122 mayautomatically assign the order to appropriate handler 2506 (e.g., anavailable handler). In some embodiments, transport manager application122 may accept a request from handler 2506 and assign it to handler2506.

At 2908, transport manager application 122 tracks the progress of thetransport of the good based on an event time generated from the requestor assigned by handler 2206. For example, in some embodiments, transportmanager application 122 will track transporter progress in departingfrom their current or pickup location and arriving at an intermediatelocation or destination location. In some embodiments, transportermanager application 122 may provide the progress via user interface2300's scheduled action 2316.

Various embodiments may be implemented, for example, using one or morewell-known computer systems, such as computer system 3000 shown in FIG.30. One or more computer systems 3000 may be used, for example, toimplement any of the embodiments discussed herein, as well ascombinations and sub-combinations thereof.

Computer system 3000 may include one or more processors (also calledcentral processing units, or CPUs), such as a processor 3004. Processor3004 may be connected to a communication infrastructure or bus 3006.

Computer system 3000 may also include user input/output device(s) 3003,such as monitors, keyboards, pointing devices, etc., which maycommunicate with communication infrastructure 3006 through userinput/output interface(s) 3002.

One or more processors 3004 may be a graphics processing unit (GPU). Inan embodiment, a GPU may be a processor that is a specialized electroniccircuit designed to process mathematically intensive applications. TheGPU may have a parallel structure that is efficient for parallelprocessing of large blocks of data, such as mathematically intensivedata common to computer graphics applications, images, videos, etc.

Computer system 3000 may also include a main or primary memory 3008,such as random access memory (RAM). Main memory 3008 may include one ormore levels of cache. Main memory 3008 may have stored therein controllogic (i.e., computer software) and/or data.

Computer system 3000 may also include one or more secondary storagedevices or memory 3010. Secondary memory 3010 may include, for example,a hard disk drive 3012 and/or a removable storage device or drive 3014.Removable storage drive 3014 may be a floppy disk drive, a magnetic tapedrive, a compact disk drive, an optical storage device, tape backupdevice, and/or any other storage device/drive.

Removable storage drive 3014 may interact with a removable storage unit3018. Removable storage unit 3018 may include a computer-usable orreadable storage device having stored thereon computer software (controllogic) and/or data. Removable storage unit 3018 may be a floppy disk,magnetic tape, compact disk, DVD, optical storage disk, and/any othercomputer data storage device. Removable storage drive 3014 may read fromand/or write to removable storage unit 3018.

Secondary memory 3010 may include other means, devices, components,instrumentalities or other approaches for allowing computer programsand/or other instructions and/or data to be accessed by computer system3000. Such means, devices, components, instrumentalities, or otherapproaches may include, for example, a removable storage unit 3022 andan interface 3020. Examples of the removable storage unit 3022 and theinterface 3020 may include a program cartridge and cartridge interface(such as that found in video game devices), a removable memory chip(such as an EPROM or PROM) and associated socket, a memory stick and USBport, a memory card and associated memory card slot, and/or any otherremovable storage unit and associated interface.

Computer system 3000 may further include a communication or networkinterface 3024. Communication interface 3024 may enable computer system3000 to communicate and interact with any combination of externaldevices, external networks, external entities, etc. (individually andcollectively referenced by reference number 3028). For example,communication interface 3024 may allow computer system 3000 tocommunicate with external or remote devices 3028 over communicationspath 3026, which may be wired and/or wireless (or a combinationthereof), and which may include any combination of LANs, WANs, theInternet, etc. Control logic and/or data may be transmitted to and fromcomputer system 3000 via communication path 3026.

Computer system 3000 may also be any of a personal digital assistant(PDA), desktop workstation, laptop or notebook computer, netbook,tablet, smartphone, smartwatch or other wearable, appliance, part of theInternet-of-Things, and/or embedded system, to name a few non-limitingexamples, or any combination thereof.

Computer system 3000 may be a client or server, accessing or hosting anyapplications and/or data through any delivery paradigm, including butnot limited to remote or distributed cloud computing solutions; local oron-premises software (“on-premise” cloud-based solutions); “as aservice” models (e.g., content as a service (CaaS), digital content as aservice (DCaaS), software as a service (SaaS), managed software as aservice (MSaaS), platform as a service (PaaS), desktop as a service(DaaS), framework as a service (FaaS), backend as a service (BaaS),mobile backend as a service (MBaaS), infrastructure as a service (IaaS),etc.); and/or a hybrid model including any combination of the foregoingexamples or other services or delivery paradigms.

Any applicable data structures, file formats, and schemas in computersystem 3000 may be derived from standards including but not limited toJavaScript Object Notation (JSON), Extensible Markup Language (XML), YetAnother Markup Language (YAML), Extensible Hypertext Markup Language(XHTML), Wireless Markup Language (WML), MessagePack, XML User InterfaceLanguage (XUL), or any other functionally similar representations aloneor in combination. Alternatively, proprietary data structures, formatsor schemas may be used, either exclusively or in combination with knownor open standards.

In some embodiments, a tangible, non-transitory apparatus or article ofmanufacture comprising a tangible, non-transitory computer useable orreadable medium having control logic (software) stored thereon may alsobe referred to herein as a computer program product or program storagedevice. This includes, but is not limited to, computer system 3000, mainmemory 3008, secondary memory 3010, and removable storage units 3018 and3022, as well as tangible articles of manufacture embodying anycombination of the foregoing. Such control logic, when executed by oneor more data processing devices (such as computer system 3000), maycause such data processing devices to operate as described herein.

Based on the teachings contained in this disclosure, it will be apparentto persons skilled in the relevant art(s) how to make and useembodiments of this disclosure using data processing devices, computersystems and/or computer architectures other than that shown in FIG. 30.In particular, embodiments can operate with software, hardware, and/oroperating system implementations other than those described herein.

It is to be appreciated that the Detailed Description section, and notany other section, is intended to be used to interpret the claims. Othersections can set forth one or more but not all exemplary embodiments ascontemplated by the inventor(s), and thus, are not intended to limitthis disclosure or the appended claims in any way.

While this disclosure describes exemplary embodiments for exemplaryfields and applications, it should be understood that the disclosure isnot limited thereto. Other embodiments and modifications thereto arepossible, and are within the scope and spirit of this disclosure. Forexample, and without limiting the generality of this paragraph,embodiments are not limited to the software, hardware, firmware, and/orentities illustrated in the figures and/or described herein. Further,embodiments (whether or not explicitly described herein) havesignificant utility to fields and applications beyond the examplesdescribed herein.

Embodiments have been described herein with the aid of functionalbuilding blocks illustrating the implementation of specified functionsand relationships thereof. The boundaries of these functional buildingblocks have been arbitrarily defined herein for the convenience of thedescription. Alternate boundaries can be defined as long as thespecified functions and relationships (or equivalents thereof) areappropriately performed. Also, alternative embodiments can performfunctional blocks, steps, operations, methods, etc. using orderingsdifferent than those described herein.

References herein to “one embodiment,” “an embodiment,” “an exampleembodiment,” or similar phrases, indicate that the embodiment describedcan include a particular feature, structure, or characteristic, butevery embodiment can not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same embodiment. Further, when a particular feature,structure, or characteristic is described in connection with anembodiment, it would be within the knowledge of persons skilled in therelevant art(s) to incorporate such feature, structure, orcharacteristic into other embodiments whether or not explicitlymentioned or described herein. Additionally, some embodiments can bedescribed using the expression “coupled” and “connected” along withtheir derivatives. These terms are not necessarily intended as synonymsfor each other. For example, some embodiments can be described using theterms “connected” and/or “coupled” to indicate that two or more elementsare in direct physical or electrical contact with each other. The term“coupled,” however, can also mean that two or more elements are not indirect contact with each other, but yet still co-operate or interactwith each other.

The breadth and scope of this disclosure should not be limited by any ofthe above-described exemplary embodiments but should be defined only inaccordance with the following claims and their equivalents.

What is claimed is:
 1. A computer-implemented method for a transportingof a good, comprising: receiving a user request for the transporting ofthe good from a pickup location to a destination location; identifying apickup node, a first intermediate node, a second intermediate node, anda destination node on a pre-generated graph representing the pickuplocation, a first intermediate location, a second intermediate location,and the destination location, respectively; determining a plurality oftransportation edges that each relate to a transit cost associated witha corresponding one of the pickup location, the first intermediatelocation, the second intermediate location, and the destinationlocation, wherein each of the plurality of transportation edgescorrespond to one of the pickup node, the first intermediate node, thesecond intermediate node, and the destination node such that each of thepickup node, the first intermediate node, the second intermediate node,and the destination node corresponds to the transit cost; generating asubgraph of the pre-generated graph comprising the pickup node, thefirst intermediate node, the second intermediate node, the destinationnode, and the plurality of transportation edges; and generating apreferred route from the pickup location to the destination locationhaving a lowest transit cost of transporting the good from the pickuplocation to the destination location based on the subgraph.
 2. Thecomputer-implemented method of claim 1, the generating of thepre-generated graph comprising: generating the subgraph of thepre-generated graph such that the subgraph is unique to the userrequest.
 3. The computer-implemented method of claim 1, the generatingof the preferred route comprising: generating the preferred route from aplurality of possible routes such that the preferred route has thelowest transit cost of the plurality of possible routes for transportingthe good from the pickup location to the destination route, wherein theplurality of possible routes includes at least two of: a first possibleroute from the pickup location to the destination location, a secondpossible route from the pickup location to the first intermediatelocation to the destination location, a third possible route from thepickup location to the second intermediate location to the destinationlocation, a fourth location from the pickup location to the firstintermediate location to the second intermediate location to thedestination location, and a fifth location from the pickup location tothe second intermediate location to the first intermediate location tothe destination location.
 4. The computer-implemented method of claim 1,the identifying of the pickup node, the first intermediate node, thesecond intermediate node, and the destination node comprising:identifying the pickup node and the destination node on thepre-generated graph; traversing the pre-generated graph based on thepickup node and the destination node; and identifying at least two ofthe first possible path, the second possible path, the third possiblepath, the fourth possible path, and the fifth possible path fortransporting the good from the pickup node to the destination node basedon the traversing of the pre-generated graph, wherein: the firstpossible path comprises a first segment connecting the pickup node tothe destination node, the second possible path comprises a secondsegment connecting the pickup node to the first intermediate node and athird segment connecting the first intermediate node to the destinationnode, the third possible path comprises a fourth segment connecting thepickup node to the second intermediate node and a fifth segmentconnecting the second intermediate node to the destination node, thefourth possible path comprises the second segment connecting the pickupnode to the first intermediate node, a sixth segment connecting thefirst intermediate node to the second intermediate node, and the fifthsegment connecting the second intermediate node to the destination node,the fifth possible path comprises the fourth segment connecting thepickup node to the second intermediate node, a seventh segmentconnecting the second intermediate node to the first intermediate node,and the third segment connecting the first intermediate node to thedestination node, and the first path, the second path, the third path,the fourth path, and the fifth correspond to a different one of theplurality of transportation edges.
 5. The computer-implemented method ofclaim 4, wherein a first one and a second one of the first segment, thesecond segment, the third segment, the fourth segment, the fifthsegment, the sixth segment, and the seventh segment comprise a firstmode of transportation and a second mode of transportation,respectively.
 6. The computer-implemented method of claim 5, wherein thefirst mode of transportation and the second mode of transportationcomprises a vehicle and a flight, respectively.
 7. Thecomputer-implemented method of claim 4, wherein: the plurality of edgescomprises one or more of a tendering edge, a transportation edge, and acargo edge, the tendering edge relates to a tendering time for tenderingthe good at a corresponding one of the pickup location, the firstintermediate location, the second intermediate location, and thedestination location, the transportation edge relates to at least one ofa transporting time and a transporting cost for transporting the goodover a corresponding one of the first path, the second path, the thirdpath, and the fourth path, and the cargo edge relates at least one of aloading time and an unloading time at a corresponding one of the pickuplocation, the first intermediate location, the second intermediatelocation, and the destination location.
 8. The computer-implementedmethod of claim 7, the generating of the preferred route comprising oneor more of: deriving the tendering time for tendering the good at thecorresponding one of the pickup location, the first intermediatelocation, the second intermediate location, and the destinationlocation; deriving the at least one of the transporting time and thetransporting cost for transporting the good over the corresponding oneof the first path, the second path, the third path, and the fourth path;deriving the at least one of the loading time and the unloading time ata corresponding one of the pickup location, the first intermediatelocation, the second intermediate location, and the destinationlocation.
 9. The computer-implemented method of claim 1, wherein theuser request is sent by a second user on behalf of the first user suchthat the first user is different than the second user and that the firstuser is seeking receipt of the good.
 10. The computer-implemented methodof claim 1, wherein the user request is sent by a user seeking receiptof the good
 11. The computer-implemented method of claim 1, wherein theuser request further comprises a user-selected service type, and whereinthe generating of the preferred route is further based on theuser-selected service type.
 12. The computer-implemented method of claim11, wherein the user-selected service type is one of a plurality ofavailable service types comprising at least two of a fastest routing, arecommended routing, an economy routing, and a drive-only routing. 13.The computer-implemented method of claim 12, wherein the recommendedrouting, the economy routing, and the drive-only routing are based onthe transit cost.
 14. The computer-implemented method of claim 13,wherein the transit cost is unique to a user submitting the userrequest.
 15. The computer-implemented method of claim 14, furthercomprising: determining an actual cost for transporting the good fromeach of the pickup location, the first intermediate location, the secondintermediate location, and the destination location to another one ofthe pickup location, the first intermediate location, the secondintermediate location, and the destination location; determining a uservalue of time specific to the user for a period of time for transportingthe good from the pickup location to the destination location; anddetermining the transit cost based on the actual cost and the user valueof time.
 16. The computer-implemented method of claim 15, furthercomprising: identifying a plurality of paths from the pickup location tothe destination location, wherein each of the plurality of pathscomprise at least one segment; determining a likelihood of approval ofone or more segments of the plurality of paths for transporting the goodfrom the pickup location to the destination; wherein the transit cost isfurther based on the likelihood of approval.
 17. Thecomputer-implemented method of claim 11, the generating of the preferredroute from the pickup location to the destination location comprising:generating the preferred route from the pickup location to thedestination location having the lowest transit cost based on thesubgraph using a pathfinding algorithm
 18. The computer-implementedmethod of claim 4, wherein the pathfinding algorithm is A*.
 19. Asystem, comprising: a memory; and a processor in communication with thememory and configured to: receive a user request for the transporting ofthe good from a pickup location to a destination location; identify apickup node, a first intermediate node, a second intermediate node, anda destination node on a pre-generated graph representing the pickuplocation, a first intermediate location, a second intermediate location,and the destination location, respectively; determine a plurality oftransportation edges that each relating to a transit cost correspondingto one of the pickup location, the first intermediate location, thesecond intermediate location, and the destination location, wherein eachof the plurality of transportation edges correspond to one of the pickupnode, the first intermediate node, the second intermediate node, and thedestination node such that each of the pickup node, the firstintermediate node, the second intermediate node, and the destinationnode corresponds to the transit cost; generate a subgraph of thepre-generated graph comprising the pickup node, the first intermediatenode, the second intermediate node, the destination node, and theplurality of transportation edges; and generate a preferred route fromthe pickup location to the destination location having a lowest transitcost of transporting the good from the pickup location to thedestination location from the plurality of possible routes based on thesubgraph.
 20. A computer-readable storage device having instructionsstored thereon, execution of which, by a processing device, causes theprocessing device to perform operations comprising: receiving a userrequest for a transporting of a good from a pickup location to adestination location; identifying a pickup node, a first intermediatenode, a second intermediate node, and a destination node on apre-generated graph representing the pickup location, a firstintermediate location, a second intermediate location, and thedestination location, respectively; determining a plurality oftransportation edges that each relate to a transit cost for acorresponding one of the pickup location, the first intermediatelocation, the second intermediate location, and the destinationlocation, wherein each of the plurality of transportation edgescorrespond to one of the pickup node, the first intermediate node, thesecond intermediate node, and the destination node such that each of thepickup node, the first intermediate node, the second intermediate node,and the destination node corresponds to the transit cost; generating asubgraph of the pre-generated graph comprising the pickup node, thefirst intermediate node, the second intermediate node, the destinationnode, and the plurality of transportation edges; and generating apreferred route from the pickup location to the destination locationhaving a lowest transit cost of transporting the good from the pickuplocation to the destination location based on the subgraph.